package patterns.adapter;

/**
 * Created by lenovo on 2016/11/24 0024.
 * 播放器适配器，实现MediaPlayer接口，具有play()功能，且内部对接IAdvancedMediaPlayer接口对象，实现增强功能
 */
public class MediaAdapter implements IMediaPlayer {
    //接入另一个接口，实现功能增强，从而连接两个不同的接口功能
    IAdvancedMediaPlayer advancedMediaPlayer;
    //接收播放媒体格式，有参数的构造函数
    public MediaAdapter(String audioType){
        //根据播放文件不同，而创建不同的媒体播放器，从而扩展了之前的功能。
        if (audioType.equalsIgnoreCase("vlc")){
            advancedMediaPlayer = new VlcPlayer();
        }else if (audioType.equalsIgnoreCase("mp4")){
            advancedMediaPlayer = new Mp4Player();
        }
    }
    @Override
    public void play(String audioType, String fileName) {
        if (audioType.equalsIgnoreCase("vlc")){
            advancedMediaPlayer.playVlc(fileName);
        }else if (audioType.equalsIgnoreCase("mp4")){
            advancedMediaPlayer.playMp4(fileName);
        }
    }
}
